Skip to content

fix(guard,#14438): retirer « un/une » du vocabulaire cardinal FR du garde perimeter (article nu = prose, pas compte) - #14454

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/14438-perimeter-article-fp
Sep 3, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/14438-perimeter-article-fp

Conversation

@jsboige

@jsboige jsboige commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Grain: MED/guard -- lane myia-po-2023:CoursIA -- prev: MED/genai #14426

Summary

« un fichier » est l'article indefini de la prose, pas un compte : la phrase « Un rendu scope ne voit pas la casse qu'un fichier change provoque dans un fichier inchange » tirait 1 fichier(s) face a la liste effective (reproducteur #14430, run 33723731681 -> VERDICT FAIL). Soustraction (#14438 piste 1) : l'article nu sort du vocabulaire cardinal FR ; seul le quantificateur RESTRICTIF « un seul fichier » reste un cardinal 1 -- le controle FP exige par l'issue (« une vraie assertion "un seul fichier touche : X" declenche toujours ») est couvert. Le predicat #13610 (referent nomme hors scope) est etendu a la forme « un seul ». La forme chiffree « 1 fichier : » reste la voie officielle pour declarer un perimetre d'un fichier (COUNT_CLAIM, langue-neutre).

Changements

Verification

  • 186/186 tests du fichier passent, avant et apres rebase sur origin/main frais (4c4c3e6, sans rapport : docs ledger Z3.Linq).
  • Replay phrase reproducteur fix(ci,#14429): scope the Quarto PR render to the documents the PR changed (1192 -> 1-2) #14430 : _word_form_count -> None, extract_perimeter_assertions -> [] (preuve FN end-to-end).
  • Replay controle FP : « Cette PR modifie un seul fichier : scripts/pick_idle_grain.py » -> compte 1, extraction [line], rouge « pretend 1 fichier » sur liste de 3.
  • py_compile OK ; diff +169/-32 (2 fichiers, un seul sujet : le garde perimeter).
  • Catalogue byte-identique a main (aucun artefact genere touche).

Closes #14438

…arde perimeter

Grain: MED/guard -- lane myia-po-2023:CoursIA -- prev: MED/genai #14426

« un fichier » est l'article indefini le plus banal de la prose, pas un
compte : « la casse qu'un fichier change provoque dans un fichier
inchange » tirait 1 fichier face a la liste effective (reproducteur PR
#14430, run 33723731681 -> VERDICT FAIL). Seul le quantificateur
RESTRICTIF « un seul fichier » denombre un perimetre et reste un cardinal
1 ; le predicat #13610 (referent nomme hors scope, articles indefinis)
couvre aussi cette forme etendue (_INDEF_ARTICLE etendu). La voie
officielle pour declarer un perimetre d'un fichier reste la forme chiffree
« 1 fichier : <chemin> » (COUNT_CLAIM, langue-neutre).

Controles exigés par l'issue (FN se valide par ses faux negatifs) :
- FN : phrase reproducteur #14430 verbatim -> _word_form_count None, 0
  candidat extrait, scan sans rouge (test_14438_false_negative_bare_article_prose).
- FP : « Cette PR modifie un seul fichier : X » -> compte 1, extraite et
  confrontee, rouge sur mismatch (test_14438_positive_control_restricted_form_still_fires).
- Tests fondateurs #13610/#13791/#13535 adaptes a la forme restrictive ;
  les formes verbatim article nu sont pinnees comme non-candidates
  (extraction vide). 186/186 tests passent.

Co-Authored-By: Claude-Code <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Bash Syntax Advisory — shebang / executable-bit warnings

See the Shebang + dry-run advisory job log for the per-file ::warning:: lines. Non-blocking.

@github-actions github-actions Bot added the variation-light-cap-reached Lane ayant deja merge une LIGHT aujourd'hui (cap G-VAR-2 atteint) label Sep 3, 2026
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

G-VAR-2 light cap reached (advisory, non bloquant).
La lane myia-po-2023:CoursIA a deja consomme son budget LIGHT du jour (#14260 (merge a 2026-09-03T00:01:12Z)).
G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour,
toutes categories LIGHT confondues
(guard, doc, refs, ... partagent un seul budget) :
c'est un RATIO, pas un plafond plat. La decision de merge reste au coordinateur.

@github-actions github-actions Bot added the lane-claim-absent Closing issue carries no claim at all (#10223) label Sep 3, 2026
@myia-ai-01
myia-ai-01 merged commit 476af3d into main Sep 3, 2026
15 checks passed
jsboige added a commit that referenced this pull request Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lane-claim-absent Closing issue carries no claim at all (#10223) variation-light-cap-reached Lane ayant deja merge une LIGHT aujourd'hui (cap G-VAR-2 atteint)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

check_pr_perimeter: l'article indefini « un fichier » est lu comme le cardinal 1 -> faux positif bloquant sur toute prose FR

2 participants